{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "9e00c44b",
   "metadata": {},
   "source": [
    "﻿# metaGPT 安装和配置指南\n",
    "\n",
    "请确保你的系统已安装Python 3.9+且版本低于3.12。你可以通过以下命令进行检查："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "87568669",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Python 3.10.11\n"
     ]
    }
   ],
   "source": [
    "!python --version"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "0473a109",
   "metadata": {},
   "outputs": [],
   "source": [
    "或者直接在命令行窗口输入`python`，看看进入的是哪个版本。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f2bb7c68",
   "metadata": {},
   "source": [
    "## metagpt安装\n",
    "\n",
    "### 方法一：pip安装\n",
    "```powershell\n",
    "pip install metagpt\n",
    "```\n",
    "注意：如使用该方法，后续运行实例还需手动拉取metagpt/ext目录，因为pip的metagpt包没有ext目录。\n",
    "\n",
    "### 方法二：源码安装（推荐）\n",
    "须先检查是否安装git，没有的话请先安装git。\n",
    "\n",
    "打开VS Code，点击\"Clone Git Repository\"，使用以下仓库地址：\n",
    "```\n",
    "https://github.com/geekan/MetaGPT\n",
    "```\n",
    "\n",
    "如果该链接不能拉取GitHub仓库，请尝试使用其他镜像或代理：\n",
    "```bash\n",
    "# 使用gitclone.com代理\n",
    "git clone https://gitclone.com/github.com/geekan/MetaGPT.git\n",
    "\n",
    "# 使用fastgit.org代理\n",
    "git clone https://hub.fastgit.org/geekan/MetaGPT.git\n",
    "\n",
    "# 使用kgithub.com代理\n",
    "git clone https://kgithub.com/geekan/MetaGPT.git\n",
    "```\n",
    "\n",
    "然后在当前环境终端输入以下命令：\n",
    "```bash\n",
    "pip install -e .\n",
    "# 如需使用RAG模块，继续执行以下代码：\n",
    "pip install -e .[rag] \n",
    "```"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "5242d731",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Looking in indexes: https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple\n",
      "Collecting metagpt\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/48/18/46e2f27f03cd4e1c76d07afb8013d502b8e6d6a191c5b93fc3065026963d/metagpt-0.8.1-py3-none-any.whl (402 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m402.2/402.2 kB\u001b[0m \u001b[31m970.7 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting aiohttp==3.8.6 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/41/8e/4c48881316bbced3d13089c4d0df4be321ce79a0c695d82dee9996aaf56b/aiohttp-3.8.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.0/1.0 MB\u001b[0m \u001b[31m972.0 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting channels==4.0.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/f5/52/a233dc63996547f171c2013f2d0505dcfa7d0557e7cde8748a2bd70b5a31/channels-4.0.0-py3-none-any.whl (28 kB)\n",
      "Collecting faiss-cpu==1.7.4 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/98/a6/4caf215afd86e3b365f3ba0d9c01800d46bc8e42e65fe3667dd9dd3a3213/faiss_cpu-1.7.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.6 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m17.6/17.6 MB\u001b[0m \u001b[31m939.1 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting fire==0.4.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/11/07/a119a1aa04d37bc819940d95ed7e135a7dcca1c098123a3764a6dcace9e7/fire-0.4.0.tar.gz (87 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m87.7/87.7 kB\u001b[0m \u001b[31m6.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25h  Installing build dependencies ... \u001b[?25ldone\n",
      "\u001b[?25h  Getting requirements to build wheel ... \u001b[?25ldone\n",
      "\u001b[?25h  Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25hCollecting typer==0.9.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/bf/0e/c68adf10adda05f28a6ed7b9f4cd7b8e07f641b44af88ba72d9c89e4de7a/typer-0.9.0-py3-none-any.whl (45 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m45.9/45.9 kB\u001b[0m \u001b[31m416.1 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting lancedb==0.4.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/3e/35/2dfde0b42b6f86cdb52eec79beb3ed2a78f8f22331e3cbfdedeae746c415/lancedb-0.4.0-py3-none-any.whl (81 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m81.4/81.4 kB\u001b[0m \u001b[31m781.6 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting loguru==0.6.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/fe/21/e1d1da2586865a159fc73b611f36bdd50b6c4043cb6132d3d5e972988028/loguru-0.6.0-py3-none-any.whl (58 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m58.3/58.3 kB\u001b[0m \u001b[31m1.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting meilisearch==0.21.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/2d/d8/cc75e30ce1a43898621d5b2fe780b213ad7e4c8f2adccd29851d47d39a11/meilisearch-0.21.0-py3-none-any.whl (19 kB)\n",
      "Collecting numpy==1.24.3 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/6f/72/38f9a536bdb5bfb1682f2520f133ec6e08dde8bcca1f632e347641d90763/numpy-1.24.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m17.3/17.3 MB\u001b[0m \u001b[31m3.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting openai==1.6.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/e7/44/5ece9adb8b5943273c845a1e3200168b396f556051b7d2745995abf41584/openai-1.6.1-py3-none-any.whl (225 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m225.4/225.4 kB\u001b[0m \u001b[31m1.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting openpyxl (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl (250 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m250.9/250.9 kB\u001b[0m \u001b[31m328.7 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting beautifulsoup4==4.12.3 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/b1/fe/e8c672695b37eecc5cbf43e1d0638d88d66ba3a44c4d321c796f4e59167f/beautifulsoup4-4.12.3-py3-none-any.whl (147 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m147.9/147.9 kB\u001b[0m \u001b[31m27.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting pandas==2.1.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/2f/0e/3b74e8f7c908082793adafb02753477f653ccd7e189f3ba070757d2d0e65/pandas-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m12.3/12.3 MB\u001b[0m \u001b[31m4.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting pydantic==2.6.4 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/e5/f3/8296f550276194a58c5500d55b19a27ae0a5a3a51ffef66710c58544b32d/pydantic-2.6.4-py3-none-any.whl (394 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m394.9/394.9 kB\u001b[0m \u001b[31m2.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting python-docx==0.8.11 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/8b/a0/52729ce4aa026f31b74cc877be1d11e4ddeaa361dc7aebec148171644b33/python-docx-0.8.11.tar.gz (5.6 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.6/5.6 MB\u001b[0m \u001b[31m4.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25h  Installing build dependencies ... \u001b[?25ldone\n",
      "\u001b[?25h  Getting requirements to build wheel ... \u001b[?25ldone\n",
      "\u001b[?25h  Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25hRequirement already satisfied: PyYAML==6.0.1 in /usr/local/lib/python3.10/site-packages (from metagpt) (6.0.1)\n",
      "Collecting setuptools==65.6.3 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/ef/e3/29d6e1a07e8d90ace4a522d9689d03e833b67b50d1588e693eec15f26251/setuptools-65.6.3-py3-none-any.whl (1.2 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.2/1.2 MB\u001b[0m \u001b[31m1.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m0m\n",
      "\u001b[?25hRequirement already satisfied: tenacity==8.2.3 in /usr/local/lib/python3.10/site-packages (from metagpt) (8.2.3)\n",
      "Collecting tiktoken==0.6.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/16/05/5efbd91252ffb1301ea393d88ef736b33d41e75d4bcf0bd31d660050e400/tiktoken-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.8/1.8 MB\u001b[0m \u001b[31m4.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting tqdm==4.66.2 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/2a/14/e75e52d521442e2fcc9f1df3c5e456aead034203d4797867980de558ab34/tqdm-4.66.2-py3-none-any.whl (78 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m78.3/78.3 kB\u001b[0m \u001b[31m868.7 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting anthropic==0.18.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/32/4a/02d69330846cb986c93284a087407e219c843e9f93c9194b0d442a810787/anthropic-0.18.1-py3-none-any.whl (848 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m848.1/848.1 kB\u001b[0m \u001b[31m2.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting typing-inspect==0.8.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/be/01/59b743dca816c4b6ca891b9e0f84d20513cd61bdbbaa8615de8f5aab68c1/typing_inspect-0.8.0-py3-none-any.whl (8.7 kB)\n",
      "Collecting libcst==1.0.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/c1/23/0cc3da3a7a5989bb34a491c6d51b25aecfba9a8e23efde92f1a15fc20915/libcst-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.9/2.9 MB\u001b[0m \u001b[31m3.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting qdrant-client==1.7.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/80/43/cf47f8c8c231612ab3f92f5ddcbd78b07bfca3e31656a9b87d200d545cb2/qdrant_client-1.7.0-py3-none-any.whl (203 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m203.7/203.7 kB\u001b[0m \u001b[31m2.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting ta==0.10.2 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/9a/1b/b8efb240be6d904c2f0ec54dd52d55bafccbcfa72d7e688e0e10aef63e00/ta-0.10.2.tar.gz (25 kB)\n",
      "  Installing build dependencies ... \u001b[?25ldone\n",
      "\u001b[?25h  Getting requirements to build wheel ... \u001b[?25ldone\n",
      "\u001b[?25h  Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25hCollecting semantic-kernel==0.4.3.dev0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/14/a2/468d2caa9c14de4d9e2d9c6adb39e71d91a2ee874ecb525838fcf2c92784/semantic_kernel-0.4.3.dev0-py3-none-any.whl (214 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m214.9/214.9 kB\u001b[0m \u001b[31m1.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting wrapt==1.15.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/7f/b6/6dc0ddacd20337b4ce6ab0d6b0edc7da3898f85c4f97df7f30267e57509e/wrapt-1.15.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (78 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m78.4/78.4 kB\u001b[0m \u001b[31m7.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting aioredis~=2.0.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/9b/a9/0da089c3ae7a31cbcd2dcf0214f6f571e1295d292b6139e2bac68ec081d0/aioredis-2.0.1-py3-none-any.whl (71 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m71.2/71.2 kB\u001b[0m \u001b[31m23.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting websocket-client==1.6.2 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/4b/4a/3176388095e5bae6e6a1fbee66c438809230ae0196e7de4af12c5e75c509/websocket_client-1.6.2-py3-none-any.whl (57 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m57.0/57.0 kB\u001b[0m \u001b[31m527.1 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: aiofiles==23.2.1 in /usr/local/lib/python3.10/site-packages (from metagpt) (23.2.1)\n",
      "Requirement already satisfied: gitpython==3.1.40 in /usr/local/lib/python3.10/site-packages (from metagpt) (3.1.40)\n",
      "Collecting zhipuai==2.0.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/8f/05/c3d4556886b5c6cf8c0b96eb80448ee8154c0dcc87086df018e817779ed4/zhipuai-2.0.1-py3-none-any.whl (26 kB)\n",
      "Collecting rich==13.6.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/be/2a/4e62ff633612f746f88618852a626bbe24226eba5e7ac90e91dcfd6a414e/rich-13.6.0-py3-none-any.whl (239 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m239.8/239.8 kB\u001b[0m \u001b[31m1.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting nbclient==0.9.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/6b/3a/607149974149f847125c38a62b9ea2b8267eb74823bbf8d8c54ae0212a00/nbclient-0.9.0-py3-none-any.whl (24 kB)\n",
      "Requirement already satisfied: nbformat==5.9.2 in /usr/local/lib/python3.10/site-packages (from metagpt) (5.9.2)\n",
      "Collecting ipython==8.17.2 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/20/45/18f0dc2cbc3ee6680a004f620fb1400c6511ded0a76a2dd241813786ce73/ipython-8.17.2-py3-none-any.whl (808 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m808.4/808.4 kB\u001b[0m \u001b[31m1.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting ipykernel==6.27.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/73/14/ec9a1c42d2c952c848a1ac366718783ab725148faf910bc086601809cefd/ipykernel-6.27.1-py3-none-any.whl (114 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m114.6/114.6 kB\u001b[0m \u001b[31m636.9 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting scikit-learn==1.3.2 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/d0/0b/26ad95cf0b747be967b15fb71a06f5ac67aba0fd2f9cd174de6edefc4674/scikit_learn-1.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.8 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m10.8/10.8 MB\u001b[0m \u001b[31m2.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting typing-extensions==4.9.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/b7/f4/6a90020cd2d93349b442bfcb657d0dc91eee65491600b2cb1d388bc98e6b/typing_extensions-4.9.0-py3-none-any.whl (32 kB)\n",
      "Collecting socksio~=1.0.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/37/c3/6eeb6034408dac0fa653d126c9204ade96b819c936e136c5e8a6897eee9c/socksio-1.0.0-py3-none-any.whl (12 kB)\n",
      "Collecting gitignore-parser==0.1.9 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/0f/0d/c3278a636547407d2d4d57d3e229492f4bf5417147aa9b5cac144cf6abfc/gitignore_parser-0.1.9.tar.gz (5.3 kB)\n",
      "  Installing build dependencies ... \u001b[?25ldone\n",
      "\u001b[?25h  Getting requirements to build wheel ... \u001b[?25ldone\n",
      "\u001b[?25h  Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25hRequirement already satisfied: websockets~=11.0 in /usr/local/lib/python3.10/site-packages (from metagpt) (11.0.3)\n",
      "Collecting networkx~=3.2.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/d5/f0/8fbc882ca80cf077f1b246c0e3c3465f7f415439bdea6b899f6b19f61f70/networkx-3.2.1-py3-none-any.whl (1.6 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.6/1.6 MB\u001b[0m \u001b[31m292.7 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting google-generativeai==0.4.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/36/b7/5dbfe5703ace647e7250da9b9e746c4e9287eacfb5097cfa8fb2c15f1209/google_generativeai-0.4.1-py3-none-any.whl (137 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m137.4/137.4 kB\u001b[0m \u001b[31m602.6 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting playwright>=1.26 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/b9/63/c9a73736e434df894e484278dddc0bf154312ff8d0f16d516edb790a7d42/playwright-1.50.0-py3-none-manylinux1_x86_64.whl (45.1 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m45.1/45.1 MB\u001b[0m \u001b[31m7.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m:00:01\u001b[0m\n",
      "\u001b[?25hCollecting anytree (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/6a/fb/ff946843e6b55ae9fda84df3964d6c233cd2261dface789f5be02ab79bc5/anytree-2.12.1-py3-none-any.whl (44 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m44.9/44.9 kB\u001b[0m \u001b[31m15.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting ipywidgets==8.1.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/4a/0e/57ed498fafbc60419a9332d872e929879ceba2d73cb11d284d7112472b3e/ipywidgets-8.1.1-py3-none-any.whl (139 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m139.4/139.4 kB\u001b[0m \u001b[31m850.1 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m-:--:--\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: Pillow in /usr/local/lib/python3.10/site-packages (from metagpt) (10.0.0)\n",
      "Collecting imap-tools==1.5.0 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/8a/21/83cd4c8de113ab92e302f83b7843a51588bcd85e4b9baf765e5b0a04ef22/imap_tools-1.5.0-py3-none-any.whl (32 kB)\n",
      "Collecting qianfan==0.3.2 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/32/d0/322b8620da10ed0947d4a0c52956d816624c678c678f7a49bd65dc9fc97f/qianfan-0.3.2-py3-none-any.whl (289 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m289.1/289.1 kB\u001b[0m \u001b[31m812.3 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting dashscope==1.14.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/42/fb/620774fcf315610e3ad3ba9b92fb5b7b1965918e8d0ec91a23d98927557c/dashscope-1.14.1-py3-none-any.whl (1.2 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.2/1.2 MB\u001b[0m \u001b[31m794.3 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting rank-bm25==0.2.2 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/2a/21/f691fb2613100a62b3fa91e9988c991e9ca5b89ea31c0d3152a3210344f9/rank_bm25-0.2.2-py3-none-any.whl (8.6 kB)\n",
      "Collecting jieba==0.42.1 (from metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/c6/cb/18eeb235f833b726522d7ebed54f2278ce28ba9438e3135ab0278d9792a2/jieba-0.42.1.tar.gz (19.2 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m19.2/19.2 MB\u001b[0m \u001b[31m4.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0mm\n",
      "\u001b[?25h  Installing build dependencies ... \u001b[?25ldone\n",
      "\u001b[?25h  Getting requirements to build wheel ... \u001b[?25ldone\n",
      "\u001b[?25h  Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25hRequirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/site-packages (from aiohttp==3.8.6->metagpt) (23.1.0)\n",
      "Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.10/site-packages (from aiohttp==3.8.6->metagpt) (3.2.0)\n",
      "Collecting multidict<7.0,>=4.5 (from aiohttp==3.8.6->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/a6/64/2dd6c4c681688c0165dea3975a6a4eab4944ea30f35000f8b8af1df3148c/multidict-6.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (124 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m124.6/124.6 kB\u001b[0m \u001b[31m1.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting async-timeout<5.0,>=4.0.0a3 (from aiohttp==3.8.6->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/a7/fa/e01228c2938de91d47b307831c62ab9e4001e747789d0b05baf779a6488c/async_timeout-4.0.3-py3-none-any.whl (5.7 kB)\n",
      "Collecting yarl<2.0,>=1.0 (from aiohttp==3.8.6->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/a9/42/b1753949b327b36f210899f2dd0a0947c0c74e42a32de3f8eb5c7d93edca/yarl-1.18.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (319 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m319.7/319.7 kB\u001b[0m \u001b[31m2.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting frozenlist>=1.1.1 (from aiohttp==3.8.6->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/ee/59/928322800306f6529d1852323014ee9008551e9bb027cc38d276cbc0b0e7/frozenlist-1.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m241.9/241.9 kB\u001b[0m \u001b[31m32.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting aiosignal>=1.1.2 (from aiohttp==3.8.6->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl (7.6 kB)\n",
      "Requirement already satisfied: anyio<5,>=3.5.0 in /usr/local/lib/python3.10/site-packages (from anthropic==0.18.1->metagpt) (3.7.1)\n",
      "Collecting distro<2,>=1.7.0 (from anthropic==0.18.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl (20 kB)\n",
      "Requirement already satisfied: httpx<1,>=0.23.0 in /usr/local/lib/python3.10/site-packages (from anthropic==0.18.1->metagpt) (0.25.2)\n",
      "Requirement already satisfied: sniffio in /usr/local/lib/python3.10/site-packages (from anthropic==0.18.1->metagpt) (1.3.0)\n",
      "Requirement already satisfied: tokenizers>=0.13.0 in /usr/local/lib/python3.10/site-packages (from anthropic==0.18.1->metagpt) (0.15.0)\n",
      "Requirement already satisfied: soupsieve>1.2 in /usr/local/lib/python3.10/site-packages (from beautifulsoup4==4.12.3->metagpt) (2.5)\n",
      "Collecting Django>=3.2 (from channels==4.0.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/75/6f/d2c216d00975e2604b10940937b0ba6b2c2d9b3cc0cc633e414ae3f14b2e/Django-5.1.6-py3-none-any.whl (8.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m8.3/8.3 MB\u001b[0m \u001b[31m3.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0mm\n",
      "\u001b[?25hCollecting asgiref<4,>=3.5.0 (from channels==4.0.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/39/e3/893e8757be2612e6c266d9bb58ad2e3651524b5b40cf56761e985a28b13e/asgiref-3.8.1-py3-none-any.whl (23 kB)\n",
      "Requirement already satisfied: requests in /usr/local/lib/python3.10/site-packages (from dashscope==1.14.1->metagpt) (2.31.0)\n",
      "Requirement already satisfied: six in /usr/local/lib/python3.10/site-packages (from fire==0.4.0->metagpt) (1.16.0)\n",
      "Collecting termcolor (from fire==0.4.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/7f/be/df630c387a0a054815d60be6a97eb4e8f17385d5d6fe660e1c02750062b4/termcolor-2.5.0-py3-none-any.whl (7.8 kB)\n",
      "Requirement already satisfied: gitdb<5,>=4.0.1 in /usr/local/lib/python3.10/site-packages (from gitpython==3.1.40->metagpt) (4.0.11)\n",
      "Collecting google-ai-generativelanguage==0.4.0 (from google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/40/c2/d28988d3cba74e712f47a498e2b3e3b58ac215106019bf5d8c20f8ab9822/google_ai_generativelanguage-0.4.0-py3-none-any.whl (598 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m598.7/598.7 kB\u001b[0m \u001b[31m924.0 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting google-auth>=2.15.0 (from google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/9d/47/603554949a37bca5b7f894d51896a9c534b9eab808e2520a748e081669d0/google_auth-2.38.0-py2.py3-none-any.whl (210 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m210.8/210.8 kB\u001b[0m \u001b[31m443.6 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting google-api-core (from google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/b1/a6/8e30ddfd3d39ee6d2c76d3d4f64a83f77ac86a4cab67b286ae35ce9e4369/google_api_core-2.24.1-py3-none-any.whl (160 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m160.1/160.1 kB\u001b[0m \u001b[31m3.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: protobuf in /usr/local/lib/python3.10/site-packages (from google-generativeai==0.4.1->metagpt) (4.25.1)\n",
      "Requirement already satisfied: comm>=0.1.1 in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (0.1.4)\n",
      "Requirement already satisfied: debugpy>=1.6.5 in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (1.8.0)\n",
      "Requirement already satisfied: jupyter-client>=6.1.12 in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (8.3.1)\n",
      "Requirement already satisfied: jupyter-core!=5.0.*,>=4.12 in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (5.3.2)\n",
      "Requirement already satisfied: matplotlib-inline>=0.1 in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (0.1.6)\n",
      "Requirement already satisfied: nest-asyncio in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (1.5.8)\n",
      "Requirement already satisfied: packaging in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (23.2)\n",
      "Requirement already satisfied: psutil in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (5.9.5)\n",
      "Requirement already satisfied: pyzmq>=20 in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (25.1.1)\n",
      "Requirement already satisfied: tornado>=6.1 in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (6.3.3)\n",
      "Requirement already satisfied: traitlets>=5.4.0 in /usr/local/lib/python3.10/site-packages (from ipykernel==6.27.1->metagpt) (5.11.2)\n",
      "Requirement already satisfied: decorator in /usr/local/lib/python3.10/site-packages (from ipython==8.17.2->metagpt) (5.1.1)\n",
      "Requirement already satisfied: jedi>=0.16 in /usr/local/lib/python3.10/site-packages (from ipython==8.17.2->metagpt) (0.19.1)\n",
      "Requirement already satisfied: prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30 in /usr/local/lib/python3.10/site-packages (from ipython==8.17.2->metagpt) (3.0.39)\n",
      "Requirement already satisfied: pygments>=2.4.0 in /usr/local/lib/python3.10/site-packages (from ipython==8.17.2->metagpt) (2.16.1)\n",
      "Requirement already satisfied: stack-data in /usr/local/lib/python3.10/site-packages (from ipython==8.17.2->metagpt) (0.6.3)\n",
      "Requirement already satisfied: exceptiongroup in /usr/local/lib/python3.10/site-packages (from ipython==8.17.2->metagpt) (1.1.3)\n",
      "Requirement already satisfied: pexpect>4.3 in /usr/local/lib/python3.10/site-packages (from ipython==8.17.2->metagpt) (4.8.0)\n",
      "Collecting widgetsnbextension~=4.0.9 (from ipywidgets==8.1.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/21/02/88b65cc394961a60c43c70517066b6b679738caf78506a5da7b88ffcb643/widgetsnbextension-4.0.13-py3-none-any.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m1.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m0m\n",
      "\u001b[?25hCollecting jupyterlab-widgets~=3.0.9 (from ipywidgets==8.1.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/a9/93/858e87edc634d628e5d752ba944c2833133a28fa87bb093e6832ced36a3e/jupyterlab_widgets-3.0.13-py3-none-any.whl (214 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m214.4/214.4 kB\u001b[0m \u001b[31m540.4 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting deprecation (from lancedb==0.4.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/02/c3/253a89ee03fc9b9682f1541728eb66db7db22148cd94f89ab22528cd1e1b/deprecation-2.1.0-py2.py3-none-any.whl (11 kB)\n",
      "Collecting pylance==0.9.0 (from lancedb==0.4.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/ec/74/09b864f25d108d977b4416d760269e874018192a147f662a5ed2727b9b53/pylance-0.9.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (19.5 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m19.5/19.5 MB\u001b[0m \u001b[31m3.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting ratelimiter~=1.0 (from lancedb==0.4.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/51/80/2164fa1e863ad52cc8d870855fba0fbb51edd943edffd516d54b5f6f8ff8/ratelimiter-1.2.0.post0-py3-none-any.whl (6.6 kB)\n",
      "Collecting retry>=0.9.2 (from lancedb==0.4.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/4b/0d/53aea75710af4528a25ed6837d71d117602b01946b307a3912cb3cfcbcba/retry-0.9.2-py2.py3-none-any.whl (8.0 kB)\n",
      "Collecting semver>=3.0 (from lancedb==0.4.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/a6/24/4d91e05817e92e3a61c8a21e08fd0f390f5301f1c448b137c57c4bc6e543/semver-3.0.4-py3-none-any.whl (17 kB)\n",
      "Requirement already satisfied: cachetools in /usr/local/lib/python3.10/site-packages (from lancedb==0.4.0->metagpt) (5.3.2)\n",
      "Requirement already satisfied: click>=8.1.7 in /usr/local/lib/python3.10/site-packages (from lancedb==0.4.0->metagpt) (8.1.7)\n",
      "Collecting overrides>=0.7 (from lancedb==0.4.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl (17 kB)\n",
      "Collecting camel-converter[pydantic] (from meilisearch==0.21.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/32/e5/806359514cc8305f047bd6d39d63890298c0596f7328b534059724bd1a9e/camel_converter-4.0.1-py3-none-any.whl (6.2 kB)\n",
      "Requirement already satisfied: fastjsonschema in /usr/local/lib/python3.10/site-packages (from nbformat==5.9.2->metagpt) (2.18.1)\n",
      "Requirement already satisfied: jsonschema>=2.6 in /usr/local/lib/python3.10/site-packages (from nbformat==5.9.2->metagpt) (4.19.1)\n",
      "Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/site-packages (from pandas==2.1.1->metagpt) (2.8.2)\n",
      "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/site-packages (from pandas==2.1.1->metagpt) (2023.3.post1)\n",
      "Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/site-packages (from pandas==2.1.1->metagpt) (2023.3)\n",
      "Requirement already satisfied: annotated-types>=0.4.0 in /usr/local/lib/python3.10/site-packages (from pydantic==2.6.4->metagpt) (0.6.0)\n",
      "Collecting pydantic-core==2.16.3 (from pydantic==2.6.4->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/b8/be/a3c2edde00afcf5cdc0fb710ce0289f5af776273f420b4486cf005c94b57/pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.2/2.2 MB\u001b[0m \u001b[31m1.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting lxml>=2.3.2 (from python-docx==0.8.11->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/65/8e/590e20833220eac55b6abcde71d3ae629d38ac1c3543bcc2bfe1f3c2f5d1/lxml-5.3.1-cp310-cp310-manylinux_2_28_x86_64.whl (5.2 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.2/5.2 MB\u001b[0m \u001b[31m1.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting grpcio>=1.41.0 (from qdrant-client==1.7.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/1a/67/3d6c0ad786238aac7fa93b79246fc452978fbfe9e5f86f70da8e8a2797d0/grpcio-1.70.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.9/5.9 MB\u001b[0m \u001b[31m3.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting grpcio-tools>=1.41.0 (from qdrant-client==1.7.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/3d/60/a7c493d5cb4962e88e04c4045282ab1c60cbe480fd8105e0472950d43c97/grpcio_tools-1.70.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.5/2.5 MB\u001b[0m \u001b[31m4.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting portalocker<3.0.0,>=2.7.0 (from qdrant-client==1.7.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/9b/fb/a70a4214956182e0d7a9099ab17d50bfcba1056188e9b14f35b9e2b62a0d/portalocker-2.10.1-py3-none-any.whl (18 kB)\n",
      "Collecting urllib3<2.0.0,>=1.26.14 (from qdrant-client==1.7.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/33/cf/8435d5a7159e2a9c83a95896ed596f68cf798005fe107cc655b5c5c14704/urllib3-1.26.20-py2.py3-none-any.whl (144 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m144.2/144.2 kB\u001b[0m \u001b[31m1.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting aiolimiter>=1.1.0 (from qianfan==0.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/f3/ba/df6e8e1045aebc4778d19b8a3a9bc1808adb1619ba94ca354d9ba17d86c3/aiolimiter-1.2.1-py3-none-any.whl (6.7 kB)\n",
      "Collecting bce-python-sdk>=0.8.79 (from qianfan==0.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/0f/60/b3247bae81d5ecde1a88430ffe8c57ea3f7212c6a6670b540f7d34d2c625/bce_python_sdk-0.9.29-py3-none-any.whl (343 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m343.6/343.6 kB\u001b[0m \u001b[31m797.0 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting multiprocess (from qianfan==0.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/e7/a9/39cf856d03690af6fd570cf40331f1f79acdbb3132a9c35d2c5002f7f30b/multiprocess-0.70.17-py310-none-any.whl (134 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m134.8/134.8 kB\u001b[0m \u001b[31m298.3 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: pyarrow>=14.0.1 in /usr/local/lib/python3.10/site-packages (from qianfan==0.3.2->metagpt) (14.0.1)\n",
      "Collecting python-dotenv>=1.0 (from qianfan==0.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/6a/3e/b68c118422ec867fa7ab88444e1274aa40681c606d59ac27de5a5588f082/python_dotenv-1.0.1-py3-none-any.whl (19 kB)\n",
      "Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.10/site-packages (from rich==13.6.0->metagpt) (3.0.0)\n",
      "Collecting scipy>=1.5.0 (from scikit-learn==1.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/de/3c/c96d904b9892beec978562f64d8cc43f9cca0842e65bd3cd1b7f7389b0ba/scipy-1.15.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (37.6 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m37.6/37.6 MB\u001b[0m \u001b[31m4.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0mm\n",
      "\u001b[?25hCollecting joblib>=1.1.1 (from scikit-learn==1.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/91/29/df4b9b42f2be0b623cbd5e2140cafcaa2bef0759a00b7b70104dcfe2fb51/joblib-1.4.2-py3-none-any.whl (301 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m301.8/301.8 kB\u001b[0m \u001b[31m1.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m-:--:--\u001b[0m\n",
      "\u001b[?25hCollecting threadpoolctl>=2.0.0 (from scikit-learn==1.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/4b/2c/ffbf7a134b9ab11a67b0cf0726453cedd9c5043a4fe7a35d1cefa9a1bcfb/threadpoolctl-3.5.0-py3-none-any.whl (18 kB)\n",
      "Collecting motor<4.0.0,>=3.3.1 (from semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/ab/a6/e915e3225cc431c7ff07fd3e5ae138f6eb1c3ef4f8e8356cab1ea5dc1ed5/motor-3.7.0-py3-none-any.whl (74 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m74.8/74.8 kB\u001b[0m \u001b[31m3.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting openapi_core<0.19.0,>=0.18.0 (from semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/3c/b0/7e386f89c336d21577e01b77efbba60edfe1b5732124b746bc1d02efdd72/openapi_core-0.18.2-py3-none-any.whl (82 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m82.4/82.4 kB\u001b[0m \u001b[31m5.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting prance<24.0.0.0,>=23.6.21.0 (from semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/c9/db/4fb4901ee61274d0ab97746461fc5f2637e5d73aa73f34ee28e941a699a1/prance-23.6.21.0-py3-none-any.whl (36 kB)\n",
      "Collecting python-dotenv>=1.0 (from qianfan==0.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/44/2f/62ea1c8b593f4e093cc1a7768f0d46112107e790c3e478532329e434f00b/python_dotenv-1.0.0-py3-none-any.whl (19 kB)\n",
      "Requirement already satisfied: regex<2024.0.0,>=2023.6.3 in /usr/local/lib/python3.10/site-packages (from semantic-kernel==0.4.3.dev0->metagpt) (2023.10.3)\n",
      "Collecting mypy-extensions>=0.3.0 (from typing-inspect==0.8.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl (4.7 kB)\n",
      "Collecting pyjwt~=2.8.0 (from zhipuai==2.0.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/2b/4f/e04a8067c7c96c364cef7ef73906504e2f40d690811c021e1a1901473a19/PyJWT-2.8.0-py3-none-any.whl (22 kB)\n",
      "Collecting proto-plus<2.0.0dev,>=1.22.3 (from google-ai-generativelanguage==0.4.0->google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/42/c3/59308ccc07b34980f9d532f7afc718a9f32b40e52cde7a740df8d55632fb/proto_plus-1.26.0-py3-none-any.whl (50 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m50.2/50.2 kB\u001b[0m \u001b[31m343.6 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting pyee<13,>=12 (from playwright>=1.26->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/25/68/7e150cba9eeffdeb3c5cecdb6896d70c8edd46ce41c0491e12fb2b2256ff/pyee-12.1.1-py3-none-any.whl (15 kB)\n",
      "Collecting greenlet<4.0.0,>=3.1.1 (from playwright>=1.26->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/cf/69/79e4d63b9387b48939096e25115b8af7cd8a90397a304f92436bcb21f5b2/greenlet-3.1.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (599 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m599.5/599.5 kB\u001b[0m \u001b[31m722.9 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting et-xmlfile (from openpyxl->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl (18 kB)\n",
      "Requirement already satisfied: idna>=2.8 in /usr/local/lib/python3.10/site-packages (from anyio<5,>=3.5.0->anthropic==0.18.1->metagpt) (3.4)\n",
      "Collecting pycryptodome>=3.8.0 (from bce-python-sdk>=0.8.79->qianfan==0.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/ea/66/6f2b7ddb457b19f73b82053ecc83ba768680609d56dd457dbc7e902c41aa/pycryptodome-3.21.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m801.3 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting future>=0.6.0 (from bce-python-sdk>=0.8.79->qianfan==0.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/da/71/ae30dadffc90b9006d77af76b393cb9dfbfc9629f339fc1574a1c52e6806/future-1.0.0-py3-none-any.whl (491 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m491.3/491.3 kB\u001b[0m \u001b[31m1.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting sqlparse>=0.3.1 (from Django>=3.2->channels==4.0.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/a9/5c/bfd6bd0bf979426d405cc6e71eceb8701b148b16c21d2dc3c261efc61c7b/sqlparse-0.5.3-py3-none-any.whl (44 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m44.4/44.4 kB\u001b[0m \u001b[31m10.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: smmap<6,>=3.0.1 in /usr/local/lib/python3.10/site-packages (from gitdb<5,>=4.0.1->gitpython==3.1.40->metagpt) (5.0.1)\n",
      "Collecting pyasn1-modules>=0.2.1 (from google-auth>=2.15.0->google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/77/89/bc88a6711935ba795a679ea6ebee07e128050d6382eaa35a0a47c8032bdc/pyasn1_modules-0.4.1-py3-none-any.whl (181 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m181.5/181.5 kB\u001b[0m \u001b[31m1.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting rsa<5,>=3.1.4 (from google-auth>=2.15.0->google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/49/97/fa78e3d2f65c02c8e1268b9aba606569fe97f6c8f7c2d74394553347c145/rsa-4.9-py3-none-any.whl (34 kB)\n",
      "INFO: pip is looking at multiple versions of grpcio-tools to determine which version is compatible with other requirements. This could take a while.\n",
      "Collecting grpcio-tools>=1.41.0 (from qdrant-client==1.7.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/63/06/be27b8f1811ff4cc556bdec64a9004755a929df035dc606466a75c9ac0fa/grpcio_tools-1.69.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.5/2.5 MB\u001b[0m \u001b[31m1.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/4c/cf/c758ba07d4213bf706e90e4adde3dbf47f93d80cb8407fd449cc662f27aa/grpcio_tools-1.68.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m1.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/d8/e1/6a8c3bf5573cecd99e28f5e5f5405033dceeafe994eaed820bc1616117f4/grpcio_tools-1.68.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m2.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/b9/51/bd73cd6515c2e81ba0a29b3cf6f2f62ad94737326f70b32511d1972a383e/grpcio_tools-1.67.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m2.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/eb/53/3eb4eb7c178a229676d1ff0bcda640ebc0a104d12cdbd884f6796d118c56/grpcio_tools-1.67.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m2.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/87/58/e8d3acd930a68593cc8a6c48c2fa54205cfd127c03cb844d66107d24383e/grpcio_tools-1.66.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m2.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/30/5c/445418ac0a41963166f83bb1e24bb960e9b7aa7493047504334bd1ac3c08/grpcio_tools-1.66.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m2.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hINFO: pip is still looking at multiple versions of grpcio-tools to determine which version is compatible with other requirements. This could take a while.\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/05/c0/7051d6fbea8e2a9983b5c9fada20002dba8926e6907e23503c419f05ad27/grpcio_tools-1.66.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m3.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/f7/8c/948ecb02ce2c4e0f64d7046615100134eec2ae0c304850f46b8798f60e55/grpcio_tools-1.65.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m3.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0mm\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/01/1e/ac29c8b043bf9a337e904915d86f1831bf56e4027d0c97fc85b12beb1cad/grpcio_tools-1.65.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m3.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/90/09/7859e98d1a8ab6b6c74edbdb2b3174b1259c988c01093c815c3cbbd78c4f/grpcio_tools-1.65.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m3.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0mm\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/e2/52/4c17784fc98c0905ca5dfdc820b740b3ede6d6a5693107e64d98d53cdf94/grpcio_tools-1.65.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m3.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m0m\n",
      "\u001b[?25hINFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/45/71/986e0ad582c1dcf765ea527ea5232213726cea62a2e62a2833b41be5fd14/grpcio_tools-1.64.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m3.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/d7/67/42e73ed286c3e2d58e4da45abe0db547797710d46f4f1c565b46aab42aac/grpcio_tools-1.64.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m4.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/fe/9a/80f0a5c28b7693978604207cc8148b8da8f0ee9f9a96627391fc7a0149e8/grpcio_tools-1.64.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m4.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/de/bf/c6e82817f5f7f2aef6ab1f04abbde975ce46a0688224915d8c3d4a4eb703/grpcio_tools-1.63.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m3.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/03/42/c2e300ea156433983ddd50915aaf0581d8948558ab7846b76ca03d2bd307/grpcio_tools-1.63.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m2.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m0m\n",
      "\u001b[?25h  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/74/34/bb8f816893fc73fd6d830e895e8638d65d13642bb7a434f9175c5ca7da11/grpcio_tools-1.62.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.8/2.8 MB\u001b[0m \u001b[31m4.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: certifi in /usr/local/lib/python3.10/site-packages (from httpx<1,>=0.23.0->anthropic==0.18.1->metagpt) (2023.7.22)\n",
      "Requirement already satisfied: httpcore==1.* in /usr/local/lib/python3.10/site-packages (from httpx<1,>=0.23.0->anthropic==0.18.1->metagpt) (1.0.2)\n",
      "Requirement already satisfied: h11<0.15,>=0.13 in /usr/local/lib/python3.10/site-packages (from httpcore==1.*->httpx<1,>=0.23.0->anthropic==0.18.1->metagpt) (0.14.0)\n",
      "Collecting h2<5,>=3 (from httpx<1,>=0.23.0->anthropic==0.18.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/d0/9e/984486f2d0a0bd2b024bf4bc1c62688fcafa9e61991f041fb0e2def4a982/h2-4.2.0-py3-none-any.whl (60 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m61.0/61.0 kB\u001b[0m \u001b[31m14.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: parso<0.9.0,>=0.8.3 in /usr/local/lib/python3.10/site-packages (from jedi>=0.16->ipython==8.17.2->metagpt) (0.8.3)\n",
      "Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.10/site-packages (from jsonschema>=2.6->nbformat==5.9.2->metagpt) (2023.7.1)\n",
      "Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.10/site-packages (from jsonschema>=2.6->nbformat==5.9.2->metagpt) (0.30.2)\n",
      "Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.10/site-packages (from jsonschema>=2.6->nbformat==5.9.2->metagpt) (0.10.3)\n",
      "Requirement already satisfied: platformdirs>=2.5 in /usr/local/lib/python3.10/site-packages (from jupyter-core!=5.0.*,>=4.12->ipykernel==6.27.1->metagpt) (3.11.0)\n",
      "Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.10/site-packages (from markdown-it-py>=2.2.0->rich==13.6.0->metagpt) (0.1.2)\n",
      "Collecting pymongo<5.0,>=4.9 (from motor<4.0.0,>=3.3.1->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/4d/9c/9d19ea4187eecce995ea261ca6ead9b85082246370da10b5d3e8cb0b09c1/pymongo-4.11.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.2/1.2 MB\u001b[0m \u001b[31m6.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting isodate (from openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/15/aa/0aca39a37d3c7eb941ba736ede56d689e7be91cab5d9ca846bde3999eba6/isodate-0.7.2-py3-none-any.whl (22 kB)\n",
      "Collecting jsonschema-spec<0.3.0,>=0.2.3 (from openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/d9/a2/7759a4268e1d6d74559de8fb5be6c77d621b822ae64d28ab4f7467c22f63/jsonschema_spec-0.2.4-py3-none-any.whl (14 kB)\n",
      "Collecting more-itertools (from openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/23/62/0fe302c6d1be1c777cab0616e6302478251dfbf9055ad426f5d0def75c89/more_itertools-10.6.0-py3-none-any.whl (63 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m63.0/63.0 kB\u001b[0m \u001b[31m76.1 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting openapi-schema-validator<0.7.0,>=0.6.0 (from openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/21/c6/ad0fba32775ae749016829dace42ed80f4407b171da41313d1a3a5f102e4/openapi_schema_validator-0.6.3-py3-none-any.whl (8.8 kB)\n",
      "Collecting openapi-spec-validator<0.8.0,>=0.7.1 (from openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/2b/4d/e744fff95aaf3aeafc968d5ba7297c8cda0d1ecb8e3acd21b25adae4d835/openapi_spec_validator-0.7.1-py3-none-any.whl (38 kB)\n",
      "Collecting parse (from openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/d0/31/ba45bf0b2aa7898d81cbbfac0e88c267befb59ad91a19e36e1bc5578ddb1/parse-1.20.2-py2.py3-none-any.whl (20 kB)\n",
      "Collecting werkzeug (from openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl (224 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m224.5/224.5 kB\u001b[0m \u001b[31m260.0 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: ptyprocess>=0.5 in /usr/local/lib/python3.10/site-packages (from pexpect>4.3->ipython==8.17.2->metagpt) (0.7.0)\n",
      "Collecting chardet>=3.0 (from prance<24.0.0.0,>=23.6.21.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl (199 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m199.4/199.4 kB\u001b[0m \u001b[31m344.0 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting ruamel.yaml>=0.17.10 (from prance<24.0.0.0,>=23.6.21.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/c2/36/dfc1ebc0081e6d39924a2cc53654497f967a084a436bb64402dfce4254d9/ruamel.yaml-0.18.10-py3-none-any.whl (117 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m117.7/117.7 kB\u001b[0m \u001b[31m199.3 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: wcwidth in /usr/local/lib/python3.10/site-packages (from prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30->ipython==8.17.2->metagpt) (0.2.8)\n",
      "Collecting py<2.0.0,>=1.4.26 (from retry>=0.9.2->lancedb==0.4.0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/f6/f0/10642828a8dfb741e5f3fbaac830550a518a775c7fff6f04a007259b0548/py-1.11.0-py2.py3-none-any.whl (98 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m98.7/98.7 kB\u001b[0m \u001b[31m334.6 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: huggingface_hub<1.0,>=0.16.4 in /usr/local/lib/python3.10/site-packages (from tokenizers>=0.13.0->anthropic==0.18.1->metagpt) (0.19.4)\n",
      "Collecting propcache>=0.2.0 (from yarl<2.0,>=1.0->aiohttp==3.8.6->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/f4/eb/41447de61eb5454891658d0fb9b1d7d35d49a4a5dd2e0c86f2c332e8b7e1/propcache-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (205 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m205.4/205.4 kB\u001b[0m \u001b[31m432.4 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
      "\u001b[?25hCollecting googleapis-common-protos<2.0.dev0,>=1.56.2 (from google-api-core->google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/3f/85/c99a157ee99d67cc6c9ad123abb8b1bfb476fab32d2f3511c59314548e4f/googleapis_common_protos-1.68.0-py2.py3-none-any.whl (164 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m165.0/165.0 kB\u001b[0m \u001b[31m444.4 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting dill>=0.3.9 (from multiprocess->qianfan==0.3.2->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl (119 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m119.4/119.4 kB\u001b[0m \u001b[31m338.8 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: executing>=1.2.0 in /usr/local/lib/python3.10/site-packages (from stack-data->ipython==8.17.2->metagpt) (2.0.0)\n",
      "Requirement already satisfied: asttokens>=2.1.0 in /usr/local/lib/python3.10/site-packages (from stack-data->ipython==8.17.2->metagpt) (2.4.0)\n",
      "Requirement already satisfied: pure-eval in /usr/local/lib/python3.10/site-packages (from stack-data->ipython==8.17.2->metagpt) (0.2.2)\n",
      "Collecting grpcio-status<2.0.dev0,>=1.33.2 (from google-api-core->google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/e6/34/49e558040e069feebac70cdd1b605f38738c0277ac5d38e2ce3d03e1b1ec/grpcio_status-1.70.0-py3-none-any.whl (14 kB)\n",
      "Collecting hyperframe<7,>=6.1 (from h2<5,>=3->httpx<1,>=0.23.0->anthropic==0.18.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/48/30/47d0bf6072f7252e6521f3447ccfa40b421b6824517f82854703d0f5a98b/hyperframe-6.1.0-py3-none-any.whl (13 kB)\n",
      "Collecting hpack<5,>=4.1 (from h2<5,>=3->httpx<1,>=0.23.0->anthropic==0.18.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/07/c6/80c95b1b2b94682a72cbdbfb85b81ae2daffa4291fbfa1b1464502ede10d/hpack-4.1.0-py3-none-any.whl (34 kB)\n",
      "Requirement already satisfied: filelock in /usr/local/lib/python3.10/site-packages (from huggingface_hub<1.0,>=0.16.4->tokenizers>=0.13.0->anthropic==0.18.1->metagpt) (3.12.3)\n",
      "Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/site-packages (from huggingface_hub<1.0,>=0.16.4->tokenizers>=0.13.0->anthropic==0.18.1->metagpt) (2023.10.0)\n",
      "Collecting pathable<0.5.0,>=0.4.1 (from jsonschema-spec<0.3.0,>=0.2.3->openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/7d/eb/b6260b31b1a96386c0a880edebe26f89669098acea8e0318bff6adb378fd/pathable-0.4.4-py3-none-any.whl (9.6 kB)\n",
      "Collecting rfc3339-validator (from openapi-schema-validator<0.7.0,>=0.6.0->openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl (3.5 kB)\n",
      "Collecting jsonschema-path<0.4.0,>=0.3.1 (from openapi-spec-validator<0.8.0,>=0.7.1->openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/cb/58/3485da8cb93d2f393bce453adeef16896751f14ba3e2024bc21dc9597646/jsonschema_path-0.3.4-py3-none-any.whl (14 kB)\n",
      "Collecting lazy-object-proxy<2.0.0,>=1.7.1 (from openapi-spec-validator<0.8.0,>=0.7.1->openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/8b/fc/83711d743fb5aaca5747bbf225fe3b5cbe085c7f6c115856b5cce80f3224/lazy_object_proxy-1.10.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (68 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m68.3/68.3 kB\u001b[0m \u001b[31m305.3 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting pyasn1<0.7.0,>=0.4.6 (from pyasn1-modules>=0.2.1->google-auth>=2.15.0->google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl (83 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m83.1/83.1 kB\u001b[0m \u001b[31m2.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting dnspython<3.0.0,>=1.16.0 (from pymongo<5.0,>=4.9->motor<4.0.0,>=3.3.1->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/68/1b/e0a87d256e40e8c888847551b20a017a6b98139178505dc7ffb96f04e954/dnspython-2.7.0-py3-none-any.whl (313 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m313.6/313.6 kB\u001b[0m \u001b[31m493.2 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hCollecting ruamel.yaml.clib>=0.2.7 (from ruamel.yaml>=0.17.10->prance<24.0.0.0,>=23.6.21.0->semantic-kernel==0.4.3.dev0->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/35/6d/ae05a87a3ad540259c3ad88d71275cbd1c0f2d30ae04c65dcbfb6dcd4b9f/ruamel.yaml.clib-0.2.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (722 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m722.2/722.2 kB\u001b[0m \u001b[31m568.0 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: MarkupSafe>=2.1.1 in /usr/local/lib/python3.10/site-packages (from werkzeug->openapi_core<0.19.0,>=0.18.0->semantic-kernel==0.4.3.dev0->metagpt) (2.1.3)\n",
      "INFO: pip is looking at multiple versions of grpcio-status to determine which version is compatible with other requirements. This could take a while.\n",
      "Collecting grpcio-status<2.0.dev0,>=1.33.2 (from google-api-core->google-generativeai==0.4.1->metagpt)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/f6/e2/346a766a4232f74f45f8bc70e636fc3a6677e6bc3893382187829085f12e/grpcio_status-1.69.0-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/86/1c/59dfc81f27f252bef2cd52c57157bf381cb3738185d3087ac4c9ff3376b0/grpcio_status-1.68.1-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/40/ba/dc535631a9dffa421b327ebfc961911af54c396aa5324efd122a94f72464/grpcio_status-1.68.0-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/05/18/56999a1da3577d8ccc8698a575d6638e15fe25650cc88b2ce0a087f180b9/grpcio_status-1.67.1-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/4e/c9/bb10e60100994b2d3dba75a17e4f7e285c9aa793d3d1b8a9bff4ea218354/grpcio_status-1.67.0-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/bb/9b/3f1da79e94515e6e875aa291aea965ed10d3aa06ec54d81226f07c70df9c/grpcio_status-1.66.2-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/77/8f/c87481addb26cb431dc4d114a777dbd4c6a2e163d219e7e472892c75de0c/grpcio_status-1.66.1-py3-none-any.whl (14 kB)\n",
      "INFO: pip is still looking at multiple versions of grpcio-status to determine which version is compatible with other requirements. This could take a while.\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/7c/9a/d2c60c4f7faee3dcfde2033ca71fa16a26478b67c168ab0c8947c4d8e83c/grpcio_status-1.66.0-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/9e/05/b21346efcf5bc01e3747ba6732f2f17bd04703f6a9a8a4ed8ff18119ebf0/grpcio_status-1.65.5-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/21/56/890973ef868fe6031ce88c033e9b685d8aa920a2d895d09f3bea8ee6f5fb/grpcio_status-1.65.4-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/7b/32/ae47bc9eb5847f3194a8fe18ceaf7cf600b6f02e8c3a1a630d85c3a30a07/grpcio_status-1.65.2-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/02/fc/2348889495bc465540d18213dcd214e31b117f3a8665b7bb3fa028d61eab/grpcio_status-1.65.1-py3-none-any.whl (14 kB)\n",
      "INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/1e/6d/5ad42b26ed315de8b76f4220ec3d9f7c6dd5b89cbe138c2333a8f7261b4c/grpcio_status-1.64.3-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/be/b3/2f623a3c88381310055ea5ba782853e69e5c8a41853d260d131bc0b50ef7/grpcio_status-1.64.1-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/4c/b7/634bee0f33282e03073522ef054ae70ff6bacde417afbf28ef35256cd908/grpcio_status-1.64.0-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/db/2e/5035c4d9b44749e97c5d6ae9f642f24d2b72c80a134332beae1d9691aad6/grpcio_status-1.63.2-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/ef/22/e67faeb3dbf1271b1a100faeeafada4e362bad32739aeec13dd5c54ebc11/grpcio_status-1.63.0-py3-none-any.whl (14 kB)\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/90/40/972271de05f9315c0d69f9f7ebbcadd83bc85322f538637d11bb8c67803d/grpcio_status-1.62.3-py3-none-any.whl (14 kB)\n",
      "Building wheels for collected packages: fire, gitignore-parser, jieba, python-docx, ta\n",
      "  Building wheel for fire (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25h  Created wheel for fire: filename=fire-0.4.0-py2.py3-none-any.whl size=115983 sha256=54f273945e5f02538984aa67d21f58966ac1be3c687a305bc412677ad817977c\n",
      "  Stored in directory: /root/.cache/pip/wheels/0e/8a/88/1e752232ecbeb53e7c004d7538550bda92b310f1d471f96a86\n",
      "  Building wheel for gitignore-parser (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25h  Created wheel for gitignore-parser: filename=gitignore_parser-0.1.9-py3-none-any.whl size=5008 sha256=43eb027a1b541780e8b5eaf3343ea4e4c27f48f974b8c632839c387b205e0526\n",
      "  Stored in directory: /root/.cache/pip/wheels/0b/d5/df/5018cc8882550e780a400bc5d26af350ac1e5e6f7e9c1cf2e2\n",
      "  Building wheel for jieba (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25h  Created wheel for jieba: filename=jieba-0.42.1-py3-none-any.whl size=19314508 sha256=9eaede6293ed023f06ebd56acb5044351ce6013dc70497dde54fa7978b06a2f3\n",
      "  Stored in directory: /root/.cache/pip/wheels/39/b4/c0/d4cac07d2a3f979e02b19a6fb22bd67a4750ccf231e795ebef\n",
      "  Building wheel for python-docx (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25h  Created wheel for python-docx: filename=python_docx-0.8.11-py3-none-any.whl size=184541 sha256=4b7c0216a44a68db2c94a62b0c3dac96d657094c10c0d9c5316a5a82115a711e\n",
      "  Stored in directory: /root/.cache/pip/wheels/54/8e/09/8cc725ded00431b5b86f03be5e5718d3f26636f140f61e4612\n",
      "  Building wheel for ta (pyproject.toml) ... \u001b[?25ldone\n",
      "\u001b[?25h  Created wheel for ta: filename=ta-0.10.2-py3-none-any.whl size=29159 sha256=9d10751d7ba7a6a4b1872764327a861beaa25e09a13dae742d7bb3ac444be44b\n",
      "  Stored in directory: /root/.cache/pip/wheels/43/82/72/934222be64324bc5db92fd5ff8998547b075924af2d2cb2533\n",
      "Successfully built fire gitignore-parser jieba python-docx ta\n",
      "Installing collected packages: ratelimiter, parse, jieba, imap-tools, gitignore-parser, faiss-cpu, wrapt, widgetsnbextension, werkzeug, websocket-client, urllib3, typing-extensions, tqdm, threadpoolctl, termcolor, sqlparse, socksio, setuptools, semver, ruamel.yaml.clib, rfc3339-validator, python-dotenv, pyjwt, pycryptodome, pyasn1, py, proto-plus, propcache, portalocker, pathable, overrides, numpy, networkx, mypy-extensions, more-itertools, lxml, loguru, lazy-object-proxy, jupyterlab-widgets, joblib, isodate, hyperframe, hpack, grpcio, greenlet, googleapis-common-protos, future, frozenlist, et-xmlfile, dnspython, distro, dill, deprecation, chardet, camel-converter, beautifulsoup4, async-timeout, anytree, aiolimiter, typing-inspect, typer, scipy, ruamel.yaml, rsa, rich, retry, rank-bm25, python-docx, pymongo, pyee, pydantic-core, pyasn1-modules, pandas, openpyxl, multiprocess, multidict, h2, grpcio-tools, grpcio-status, fire, bce-python-sdk, asgiref, aiosignal, aioredis, yarl, tiktoken, ta, scikit-learn, pylance, pydantic, prance, playwright, motor, libcst, jsonschema-spec, jsonschema-path, ipython, google-auth, Django, zhipuai, qdrant-client, openapi-schema-validator, openai, ipywidgets, ipykernel, google-api-core, channels, aiohttp, qianfan, openapi-spec-validator, nbclient, meilisearch, lancedb, dashscope, anthropic, openapi_core, google-ai-generativelanguage, semantic-kernel, google-generativeai, metagpt\n",
      "  Attempting uninstall: websocket-client\n",
      "    Found existing installation: websocket-client 1.6.3\n",
      "    Uninstalling websocket-client-1.6.3:\n",
      "      Successfully uninstalled websocket-client-1.6.3\n",
      "  Attempting uninstall: urllib3\n",
      "    Found existing installation: urllib3 2.0.4\n",
      "    Uninstalling urllib3-2.0.4:\n",
      "      Successfully uninstalled urllib3-2.0.4\n",
      "  Attempting uninstall: typing-extensions\n",
      "    Found existing installation: typing_extensions 4.8.0\n",
      "    Uninstalling typing_extensions-4.8.0:\n",
      "      Successfully uninstalled typing_extensions-4.8.0\n",
      "  Attempting uninstall: tqdm\n",
      "    Found existing installation: tqdm 4.66.1\n",
      "    Uninstalling tqdm-4.66.1:\n",
      "      Successfully uninstalled tqdm-4.66.1\n",
      "  Attempting uninstall: setuptools\n",
      "    Found existing installation: setuptools 65.5.0\n",
      "    Uninstalling setuptools-65.5.0:\n",
      "      Successfully uninstalled setuptools-65.5.0\n",
      "  Attempting uninstall: numpy\n",
      "    Found existing installation: numpy 1.25.2\n",
      "    Uninstalling numpy-1.25.2:\n",
      "      Successfully uninstalled numpy-1.25.2\n",
      "  Attempting uninstall: networkx\n",
      "    Found existing installation: networkx 3.1\n",
      "    Uninstalling networkx-3.1:\n",
      "      Successfully uninstalled networkx-3.1\n",
      "  Attempting uninstall: loguru\n",
      "    Found existing installation: loguru 0.7.2\n",
      "    Uninstalling loguru-0.7.2:\n",
      "      Successfully uninstalled loguru-0.7.2\n",
      "  Attempting uninstall: beautifulsoup4\n",
      "    Found existing installation: beautifulsoup4 4.12.2\n",
      "    Uninstalling beautifulsoup4-4.12.2:\n",
      "      Successfully uninstalled beautifulsoup4-4.12.2\n",
      "  Attempting uninstall: rich\n",
      "    Found existing installation: rich 13.7.0\n",
      "    Uninstalling rich-13.7.0:\n",
      "      Successfully uninstalled rich-13.7.0\n",
      "  Attempting uninstall: pydantic-core\n",
      "    Found existing installation: pydantic_core 2.14.5\n",
      "    Uninstalling pydantic_core-2.14.5:\n",
      "      Successfully uninstalled pydantic_core-2.14.5\n",
      "  Attempting uninstall: pandas\n",
      "    Found existing installation: pandas 2.1.3\n",
      "    Uninstalling pandas-2.1.3:\n",
      "      Successfully uninstalled pandas-2.1.3\n",
      "  Attempting uninstall: pydantic\n",
      "    Found existing installation: pydantic 2.5.2\n",
      "    Uninstalling pydantic-2.5.2:\n",
      "      Successfully uninstalled pydantic-2.5.2\n",
      "  Attempting uninstall: ipython\n",
      "    Found existing installation: ipython 8.16.1\n",
      "    Uninstalling ipython-8.16.1:\n",
      "      Successfully uninstalled ipython-8.16.1\n",
      "  Attempting uninstall: ipykernel\n",
      "    Found existing installation: ipykernel 6.25.2\n",
      "    Uninstalling ipykernel-6.25.2:\n",
      "      Successfully uninstalled ipykernel-6.25.2\n",
      "  Attempting uninstall: nbclient\n",
      "    Found existing installation: nbclient 0.8.0\n",
      "    Uninstalling nbclient-0.8.0:\n",
      "      Successfully uninstalled nbclient-0.8.0\n",
      "Successfully installed Django-5.1.6 aiohttp-3.8.6 aiolimiter-1.2.1 aioredis-2.0.1 aiosignal-1.3.2 anthropic-0.18.1 anytree-2.12.1 asgiref-3.8.1 async-timeout-4.0.3 bce-python-sdk-0.9.29 beautifulsoup4-4.12.3 camel-converter-4.0.1 channels-4.0.0 chardet-5.2.0 dashscope-1.14.1 deprecation-2.1.0 dill-0.3.9 distro-1.9.0 dnspython-2.7.0 et-xmlfile-2.0.0 faiss-cpu-1.7.4 fire-0.4.0 frozenlist-1.5.0 future-1.0.0 gitignore-parser-0.1.9 google-ai-generativelanguage-0.4.0 google-api-core-2.24.1 google-auth-2.38.0 google-generativeai-0.4.1 googleapis-common-protos-1.68.0 greenlet-3.1.1 grpcio-1.70.0 grpcio-status-1.62.3 grpcio-tools-1.62.3 h2-4.2.0 hpack-4.1.0 hyperframe-6.1.0 imap-tools-1.5.0 ipykernel-6.27.1 ipython-8.17.2 ipywidgets-8.1.1 isodate-0.7.2 jieba-0.42.1 joblib-1.4.2 jsonschema-path-0.3.4 jsonschema-spec-0.2.4 jupyterlab-widgets-3.0.13 lancedb-0.4.0 lazy-object-proxy-1.10.0 libcst-1.0.1 loguru-0.6.0 lxml-5.3.1 meilisearch-0.21.0 metagpt-0.8.1 more-itertools-10.6.0 motor-3.7.0 multidict-6.1.0 multiprocess-0.70.17 mypy-extensions-1.0.0 nbclient-0.9.0 networkx-3.2.1 numpy-1.24.3 openai-1.6.1 openapi-schema-validator-0.6.3 openapi-spec-validator-0.7.1 openapi_core-0.18.2 openpyxl-3.1.5 overrides-7.7.0 pandas-2.1.1 parse-1.20.2 pathable-0.4.4 playwright-1.50.0 portalocker-2.10.1 prance-23.6.21.0 propcache-0.3.0 proto-plus-1.26.0 py-1.11.0 pyasn1-0.6.1 pyasn1-modules-0.4.1 pycryptodome-3.21.0 pydantic-2.6.4 pydantic-core-2.16.3 pyee-12.1.1 pyjwt-2.8.0 pylance-0.9.0 pymongo-4.11.1 python-docx-0.8.11 python-dotenv-1.0.0 qdrant-client-1.7.0 qianfan-0.3.2 rank-bm25-0.2.2 ratelimiter-1.2.0.post0 retry-0.9.2 rfc3339-validator-0.1.4 rich-13.6.0 rsa-4.9 ruamel.yaml-0.18.10 ruamel.yaml.clib-0.2.12 scikit-learn-1.3.2 scipy-1.15.2 semantic-kernel-0.4.3.dev0 semver-3.0.4 setuptools-65.6.3 socksio-1.0.0 sqlparse-0.5.3 ta-0.10.2 termcolor-2.5.0 threadpoolctl-3.5.0 tiktoken-0.6.0 tqdm-4.66.2 typer-0.9.0 typing-extensions-4.9.0 typing-inspect-0.8.0 urllib3-1.26.20 websocket-client-1.6.2 werkzeug-3.1.3 widgetsnbextension-4.0.13 wrapt-1.15.0 yarl-1.18.3 zhipuai-2.0.1\n",
      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
      "\u001b[0m\n",
      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m25.0.1\u001b[0m\n",
      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n"
     ]
    }
   ],
   "source": [
    "!pip install metagpt  -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6dad2fcd",
   "metadata": {},
   "source": [
    "## metagpt配置\n",
    "\n",
    "完成metagpt安装后，使用MetaGPT需要配置模型API：\n",
    "\n",
    "1. 在当前工作目录中创建一个名为config的文件夹\n",
    "2. 在其中添加一个名为config2.yaml的新文件\n",
    "3. 将您自己的API信息填入文件中\n",
    "\n",
    "### 支持的API配置示例\n",
    "\n",
    "#### 智谱API（推荐国内用户）\n",
    "### 支持的API配置示例\n",
    "\n",
    "#### 智谱API（推荐国内用户）\n",
    "```yaml\n",
    "llm:\n",
    "  api_type: 'zhipuai'\n",
    "  api_key: 'YOUR_API_KEY'\n",
    "  model: 'glm-4'\n",
    "```\n",
    "\n",
    "#### 科大讯飞Spark API\n",
    "```yaml\n",
    "llm:\n",
    "  api_type: 'spark'\n",
    "  app_id: 'YOUR_APPID'\n",
    "  api_key: 'YOUR_API_KEY'\n",
    "  api_secret: 'YOUR_API_SECRET'\n",
    "  domain: 'generalv3.5'\n",
    "  base_url: 'wss://spark-api.xf-yun.com/v3.5/chat'\n",
    "```\n",
    "注意：科大讯飞的API无法支持异步，适合简单问题，不适合多步骤任务。\n",
    "\n",
    "#### 百度千帆API\n",
    "```yaml\n",
    "llm:\n",
    "  api_type: 'qianfan'\n",
    "  api_key: 'YOUR_API_KEY'\n",
    "  secret_key: 'YOUR_SECRET_KEY'\n",
    "  model: 'ERNIE-Bot-4'\n",
    "```\n",
    "支持的模型包括：ERNIE-Bot-4、ERNIE-3.5等多种模型。\n",
    "\n",
    "#### 月之暗面Moonshot API\n",
    "```yaml\n",
    "llm:\n",
    "  api_type: 'moonshot'\n",
    "  base_url: 'https://api.moonshot.cn/v1'\n",
    "  api_key: 'YOUR_API_KEY'\n",
    "  model: 'moonshot-v1-8k'\n",
    "```\n",
    "\n",
    "#### 本地ollama API（推荐）\n",
    "```yaml\n",
    "llm:\n",
    "  api_type: 'ollama'\n",
    "  base_url: 'http://192.168.0.123:11434/api'\n",
    "  model: 'qwen2.5:7b'\n",
    "  \n",
    "repair_llm_output: true\n",
    "```\n",
    "注意：将IP地址替换为部署大模型的电脑IP，冒号后需要有空格。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "17f3452a",
   "metadata": {},
   "outputs": [],
   "source": [
    "%%bash\n",
    "mkdir -p config  # 创建 config 目录（若不存在）\n",
    "cat <<EOF > config/config2.yaml\n",
    "llm:\n",
    "  api_type: 'zhipuai'\n",
    "  api_key: 'YOUR_API_KEY'\n",
    "  model: 'glm-4-flash'\n",
    "EOF"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a2f94d4a",
   "metadata": {},
   "source": [
    "## 验证配置\n",
    "\n",
    "使用以下代码检验配置是否成功："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "b7741116",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "API类型: LLMType.ZHIPUAI\n",
      "模型: glm-4-flash\n"
     ]
    }
   ],
   "source": [
    "from metagpt.config2 import Config \n",
    "def print_llm_config():\n",
    "    # 加载默认配置\n",
    "    config = Config.default()\n",
    "\n",
    "    # 获取LLM配置\n",
    "    llm_config = config.llm\n",
    "    # 打印LLM配置的详细信息\n",
    "    if llm_config:\n",
    "        print(f\"API类型: {llm_config.api_type}\")\n",
    "        print(f\"API密钥: {llm_config.api_key}\")\n",
    "        print(f\"模型: {llm_config.model}\")\n",
    "    else:\n",
    "        print(\"没有配置LLM\")\n",
    "\n",
    "if __name__ == \"__main__\":\n",
    "    print_llm_config()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "aa0af4c5",
   "metadata": {},
   "source": [
    "或者简单运行："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "3f5f9776",
   "metadata": {},
   "outputs": [],
   "source": [
    "from metagpt.actions import Action"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "12f19208",
   "metadata": {},
   "source": [
    "不报错即为配置成功。\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
